#ifndef __SPI_1_H__
#define __SPI_1_H__

#include "stm32f4xx.h"
#include "systick.h"

/*************** pin config *****************/
// scl 
#define SPI1_CLK_RCU	RCC_AHB1Periph_GPIOB
#define SPI1_CLK_PORT	GPIOB
#define SPI1_CLK_PIN	GPIO_Pin_3

// MOSI 
#define SPI1_MOSI_RCU	RCC_AHB1Periph_GPIOB
#define SPI1_MOSI_PORT	GPIOB
#define SPI1_MOSI_PIN	GPIO_Pin_5

// MISO 
#define SPI1_MISO_RCU	RCC_AHB1Periph_GPIOB
#define SPI1_MISO_PORT	GPIOB
#define SPI1_MISO_PIN	GPIO_Pin_4

/*************** spi config *****************/
#define SPI1_MODE        SPI_Mode_Master // 主设备   SPI_Mode_Slave
#define SPI1_DATA_WIDTH  SPI_DataSize_8b// 数据宽度  SPI_DataSize_16b
#define SPI1_CPOL        SPI_CPOL_Low  // 极性  SPI_CPOL_High
#define SPI1_CPHA        SPI_CPHA_1Edge; // 相位 SPI_CPHA_2Edge
#define SPI1_NSS         SPI_NSS_Soft; // cs 使用软实现 SPI_NSS_Hard
#define SPI1_BaudRatePrescaler  SPI_BaudRatePrescaler_8; // 分频系数
#define SPI1_FirstBit    SPI_FirstBit_MSB; //  先发高位 SPI_FirstBit_LSB




void SPI1_INIT();
void SPI1_WRITE_BYTE(uint8_t data);
uint8_t SPI1_READ_BYTE();
#endif